home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 7 / Night Owl Shareware (NOPV7)(Night Owl Publisher Inc.)(1992).bin / 038a / bash1_12.arj / BASH1-12.TAR / bash-1.12 / builtins / Makefile < prev    next >
Makefile  |  1991-11-07  |  2KB  |  83 lines

  1. # This Makefile for building libbuiltins.a is in -*- text -*- for Emacs.
  2. #
  3. MKBUILTINS = mkbuiltins
  4. RANLIB = /usr/bin/ranlib
  5. CFLAGS = -g -I.. -I.
  6. SHELL = /bin/sh
  7. CC = cc
  8. AR = ar
  9. RM = rm -f
  10. CP = cp
  11.  
  12. .SUFFIXES:
  13. .SUFFIXES: .def .c .o
  14. # How to make a .o file from a .def file.
  15. .def.o:
  16.     $(RM) $@
  17.     ./$(MKBUILTINS) $(DIRECTDEFINE) $*.def
  18.     $(CC) -c $(CFLAGS) $(CPPFLAGS) $*.c
  19.     $(RM) $*.c
  20.  
  21. # How to make a .c file from a .def file.
  22. .def.c:
  23.     $(RM) $@
  24.     ./$(MKBUILTINS) $(DIRECTDEFINE) $*.def
  25.  
  26. # Here is a rule for making .o files from .c files that does not
  27. # force the type of the machine (like -M_MACHINE) into the flags.
  28. .c.o:
  29.     $(RM) $@
  30.     $(CC) -c $(CFLAGS) $(CPPFLAGS) $*.c
  31.  
  32. DEFS =  alias.def bind.def break.def builtin.def cd.def colon.def \
  33.     command.def declare.def echo.def enable.def eval.def \
  34.     exec.def exit.def fc.def fg_bg.def hash.def help.def history.def \
  35.     jobs.def kill.def let.def read.def return.def set.def setattr.def \
  36.     shift.def source.def suspend.def test.def times.def trap.def \
  37.     type.def ulimit.def umask.def wait.def getopts.def reserved.def
  38.  
  39. STATIC_SOURCE = common.c getopt.c getopt.h
  40.  
  41. OFILES = alias.o bind.o break.o builtin.o cd.o colon.o command.o \
  42.     common.o declare.o echo.o enable.o eval.o exec.o exit.o \
  43.     fc.o fg_bg.o hash.o help.o history.o jobs.o kill.o \
  44.     let.o read.o return.o set.o setattr.o shift.o source.o \
  45.     suspend.o test.o times.o trap.o type.o ulimit.o umask.o \
  46.     wait.o getopts.o getopt.o builtins.o
  47.  
  48. THINGS_TO_TAR = $(DEFS) $(STATIC_SOURCE) Makefile ChangeLog
  49.  
  50. CREATED_FILES = builtext.h builtins.c psize.aux pipesize.h
  51.  
  52. all: $(MKBUILTINS) libbuiltins.a
  53.  
  54. libbuiltins.a: $(MKBUILTINS) $(OFILES)
  55.     $(RM) $@
  56.     $(AR) clq $@ $(OFILES)
  57.     -if [ -f "$(RANLIB)" ]; then $(RANLIB) $@; fi
  58.  
  59. builtext.h builtins.c: $(MKBUILTINS) $(DEFS)
  60.     $(RM) builtext.h builtins.c
  61.     ./$(MKBUILTINS) -externfile builtext.h -structfile builtins.c \
  62.     -noproduction $(DEFS)
  63.  
  64. mkbuiltins: mkbuiltins.c
  65.     $(CC) $(CFLAGS) -o $(MKBUILTINS) mkbuiltins.c
  66.  
  67. ulimit.o: ulimit.def pipesize.h
  68.  
  69. pipesize.h:    psize.aux
  70.     $(SHELL) ./psize.sh > pipesize.h
  71.  
  72. psize.aux:    psize.c
  73.     $(CC) $(CFLAGS) -o $@ psize.c
  74.  
  75. documentation: builtins.texi
  76.  
  77. builtins.texi: $(MKBUILTINS)
  78.     ./$(MKBUILTINS) -documentonly $(DEFS)
  79.  
  80. clean:
  81.     $(RM) $(OFILES) $(CREATED_FILES) $(MKBUILTINS) libbuiltins.a
  82.  
  83.